This program was conceived in the Summer of 1991, and written, little by little over a year or so. Student life is fraught with exams, y'know. A lot of it is spaghetti OOP, since I was learning the NeXTSTEP environment as I went. This really shows...oh, well.
The idea of the program is to make it easier for researchers with a little programming ability to make their great sound editing ideas come to life without having to write out a full-blown application. This is accomplished by creating an environment where all a would-be programmer has to write is an add-in module object that communicates with the main program. Without modules, this program isn't too useful. With them, it shows a lot of potential, I think.
The program is not even close to complete. In addition to printing, 16-bit recording, and a properly-working view update mechanism, the program could stand quite a few more sample modules and design changes. Send me e-mail if you have ideas.
The program comes complete with source code, under the GNU license. Have fun!
About the Author
As of this writing, I'm an undergraduate at Brigham Young University, majoring in Computer Science and minoring in Music (Piano) and English Comp. Fun, huh? I'm looking for a few good graduate schools, particularly programs in computers and music, sound, or sound production. If you have any leads, I would appreciate hearing about them.
Sean Luke
Brigham Young University
sean@digaudio.byu.edu
TOOLS
There are many tool panels. These panels give access to information about sounds, and allow scrollview zooming and sound recording and playback. All can be closed except the Console. To reopen any of them, choose the appropriate menu item in the Tools menu.
Console
The Console handles the playing and recording sounds, and allows volume settings in stereo (which cannot be done with the NeXT volume keys).
Information
The information panel automatically shows the sound type, number of samples, number of channels (mono:1 stereo:2), and number of seconds of a sound. It also tells if the sound is fragmented, which happens during cut/copy/paste editing and could considerably slow down other editing procedures. To de-fragment the sound, press the Compact button.
Selection
The Selection panel shows the start, end, and length of the current selection in number of samples and number of seconds.
View
The View panel shows the start, end, and length of the current visible sound in number of samples and number of seconds.
Zoom
The Zoom panel allows zooming in or out. The buttons on the bottom work as follows:
All In Zooms in to maximum detail
<<< Zoom in significantly
<<
< Zoom in a bit
> Zoom out a bit
>>
>>> Zoom out significantly
All In Zooms out to minimum detail
To Selection Zooms to fit the selection into the window
The scroll bar allowsw precise zooming values. The small text field shows the current reduction factor, which varies between zero and one.
OTHER PANELS
Pasteboard Converstion
Allows conversion of the pasteboard sound by number of channels and sample rate.
Record Format
Is not currently implemented.
Preferences
Several application preferences are currently implemented:
Update Selection in Real Time will constantly update
the Selection panel as the selection changes with
the mouse. This is rather slow, but precise.
Update Zoom in Real Time will change the zoom as
the Zoom scroll bar moves in real time. This is also
slow, but precise.
Update View in Real Time will do the same for the View
panel; however, non-real-time view update doesn't
work properly yet—you need to click on the scroll bar
to update the view panel.
In addition, Preferences allows either oscilliscopic or min/max
display. The differences between these displays is only
visible when the sound is zoomed completely out.
THE INFO MENU
GNU License
Read this.
Bugs and Problems
List of known bugs at publishing time. If you know any more, please send e-mail!
About Modules
A short introduction to the art of writing modules to add functionality to this program.
THE EDIT MENU
Convert Pasteboard...
Converts the pasteboard sound by number of channels and sample rate.
Compact
Compacts fragmented sounds. See the Information window under Tools.
THE ZOOM MENU
To Selection
Zooms to fill the window with the current selection. Not yet implemented.
In
Zooms in.
Out
Zooms out.
All In
Zooms to maximum detail.
All Out
Zooms to show the entire sound in the window.
THE MODULES MENU
Modules should have menu options in this menu. Modules that come with this program include:
Change Amplitude changes the volume of the sound.
Double tries (in vain) to double the frequency of the
sound without changing the length.
Halve tries the same with halving the frequency.
Reverse reverses the entire sound. Channels are flipped.
THE TOOLS MENU
Calls up tool panels discussed previously
HOT KEYS
As you might have noticed, the Console insists, or demands to remain the top window. This is so it can remain visible at all times, and also so it can receive keyboard messages from the number pad. Press the Hot Keys button above to see which number pad keys correspond to buttons on the Console.